草庐IT

vue2 jest

全部标签

javascript - Vue单元测试报错: vuex requires a Promise polyfill in this browser

我使用vue-cli创建了一个项目,并在其中添加了vuex和vue-router。我正在尝试为其设置单元测试,但出现以下错误。没有Vuex,它曾经可以工作。PhantomJS2.1.1(MacOSX0.0.0)ERRORError:[vuex]vuexrequiresaPromisepolyfillinthisbrowser.atwebpack:///~/vuex/dist/vuex.js:145:0以下是相关的包版本:"babel-core":"^6.0.0","babel-eslint":"^7.0.0","babel-loader":"^6.0.0","vue":"^2.1.0"

javascript - Vue.js v-html contenteditable 防止 dom 刷新以防止光标/插入符跳转

作为引用,我使用的是Vue2.0、Vuex和Firebase。我正在构建一个contenteditable组件,使用v-html绑定(bind)来呈现innerHTML。数据在KeyUp上更新。每当数据更新时,DOM元素都会用"new"数据刷新,导致插入符号/光标跳回到内容可编辑的div的开头。我研究了Rangy和其他一些stackoverflow解决方案,但我觉得最简单的解决方案是从数据刷新中解除绑定(bind)DOM元素。我希望数据仍然在firebase中更新,但不会导致元素刷新。有没有办法让我仍然使用v-html但阻止DOM元素随数据刷新?还是有另一种方法可以在不自动绑定(bin

javascript - 我们如何模拟每个测试与 Jest 的依赖关系?

这是fullminimalrepro给定以下应用:src/food.jsconstFood={carbs:"rice",veg:"greenbeans",type:"dinner"};exportdefaultFood;src/food.jsimportFoodfrom"./food";functionformatMeal(){const{carbs,veg,type}=Food;if(type==="dinner"){return`Goodevening.Dinneris${veg}and${carbs}.Yum!`;}elseif(type==="breakfast"){retur

javascript - 嵌套的 vue.js 实例/元素

这听起来像是一个真正的菜鸟问题,但我对MVVM还是JS中的MVC还是很陌生,所以提前道歉。我正在尝试使用vue.js,到目前为止我很喜欢它的简单性。但对于我正在尝试做的事情,我认为我需要以不同的方式去做。我想将Vue实例/元素嵌套在彼此内部,但是当然,父级将在初始化时读取DOM时使用子级。为了论证,下面是我的意思的一个例子,我没有做这样的事情,但这是举例说明我的意思的最简单的方法:{{message}}{{message}}例如我的JS将是:newVue({el:"body",data:{message:"I'mtheparent"}});newVue({el:"#another",d

javascript - Vue 模板或渲染函数尚未定义,但我两者都没有使用?

这是我的主要javascript文件:importVuefrom'vue'newVue({el:'#app'});我的HTML文件:使用运行时构建的Vue.jsWebpack配置:alias:{'vue$':'vue/dist/vue.runtime.common.js'}我仍然遇到这个众所周知的错误:[Vuewarn]:Failedtomountcomponent:templateorrenderfunctionnotdefined.(foundinrootinstance)为什么当我在挂载Vue的#appdiv中什至没有任何东西时,我仍然收到渲染/模板错误?它说foundinroo

javascript - Jest 测试 "Compared values have no visual difference."

我正在对两个非常复杂的对象进行比较,并尝试在expect中使用.toEqual方法。这是我的测试:it('checkifstepGroupsdataincontrolDatamatchesdatainliveData',()=>{varcontrolStore=data.controlStorevarliveStorereturngetData().then(result=>{liveStore=newStore()liveStore.loadData(JSON.parse(result))expect(controlStore).toEqual(liveStore)})})我对预期输

javascript - 如何使用 Jest 测试输出随机的函数?

如何使用Jest测试输出随机的函数?像这样:importcuidfrom'cuid';constfunctionToTest=(value)=>({[cuid()]:{a:Math.random(),b:newDate().toString(),c:value,}});因此functionToTest('Somepredictablevalue')的输出将类似于:{'cixrchnp60000vhidc9qvd10p':{a:0.08715126430943698,b:'TueJan10201715:20:58GMT+0200(EET)',c:'Somepredictablevalue

javascript - Vue-路由器错误: TypeError: Cannot read property 'matched' of undefined

我正在尝试编写我的第一个Vuejs应用程序。我正在使用vue-cli和simple-webpackboilerplate.当我将vue-router链接添加到我的应用程序组件时,我在控制台中收到此错误Errorinrenderfunction:"TypeError:Cannotreadproperty'matched'ofundefined"这是我的代码:App.vueLinksHomeQueryexportdefault{}ma​​in.jsimportVuefrom'vue'importVueRouterfrom'vue-router'Vue.use(VueRouter)impor

javascript - Vue js 2-无法安装组件 : template or render function not defined

我有一个组件:我想使用vue-mask-inputplugin作为子组件:这是整个组件:OverviewBorn{{player.birthday}}-->Club{{player.club}}Position{{player.position}}Height{{player.height}}Weight{{player.weight}}kgFoot{{player.foot}}Agent{{player.agent}}Athleticperformance40mtime4.3s100mtime11.1sVerticaljump65cmimportMaskedInputfrom'vue

javascript - Axios/Vue - 防止 axios.all() 继续执行

在我的应用程序中,为了对用户进行身份验证,我调用了fetchData函数。如果用户token无效,应用程序将运行axios.all(),我的拦截器将返回大量错误。如何防止axios.all()在第一个错误后继续运行?并且只向用户显示一条通知?拦截器.jsexportdefault(http,store,router)=>{http.interceptors.response.use(response=>response,(error)=>{const{response}=error;letmessage='Ops.Algodeerradoaconteceu...';if([401].i